Motor controller

ABSTRACT

The motor controller drives an electric motor including a rotor as a field magnet and stator coils of U-phase, V-phase and W-phase. The motor controller includes an exploration voltage application unit for applying an exploration voltage to the stator coils of U-phase, V-phase and W-phase such that a voltage vector expressed by the voltage applied to the stator coils rotates in a predetermined cycle with maintaining a constant magnitude, an electric current detection unit for detecting an electric current flowing through the electric motor during the period in which the exploration voltage is applied by the exploration voltage application unit, and a rotor rotation angle estimation unit for estimating a rotation angle of the rotor based on a phase of the voltage vector when a magnitude of the electric current detected by the electric current detection unit takes a local maximum value.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a motor controller for sensorlessdriving of a brushless motor. A brushless motor is, for example, used asa source of steering assist force in an electric power steeringapparatus.

2. Description of Related Art

A motor controller for drive controlling a brushless DC motor isgenerally configured to control the supply of a motor current inaccordance with the output of a position sensor for detecting therotational position of a rotor. However, the environmental resistance ofthe position sensor becomes an issue. Moreover, an expensive positionsensor and wirings related to such position sensor obstruct reduction ofcost and miniaturization. Thereupon, a sensorless driving system thatdrives a brushless DC motor without using a position sensor has beenproposed. A sensorless driving system is a method for estimating thephase of a magnetic pole (an electrical angle of a rotor) by estimatingthe induced voltage caused by the rotation of a rotor.

Since induced voltage cannot be estimated when the rotor is not inrotation and when the rotor is rotating at an extremely low speed, thephase of the magnetic pole is estimated by other methods in thosesituations. Specifically, as shown in FIG. 2( a), a high frequencyexploration voltage is applied on the U-phase stator coil 51, theV-phase stator coil 52 and the W-phase stator coil 53. A high frequencyvoltage vector (its magnitude is constant) that rotates along thedirection of rotation of the rotor 50 is formed about the origin of theα-β coordinate, which is a fixed coordinate that assumes the rotationcenter of the rotor 50 as the origin. The high frequency voltage vectoris a voltage vector that rotates in sufficiently high speed relative tothe rotation speed of the rotor 50. With the application of this highfrequency voltage vector, an electric current flows to the U-phasestator coil 51, the V-phase stator coil 52 and the W-phase stator coil53. The electric current vector that expresses the magnitude and thedirection of the electric current of these three phases on the α-βcoordinates rotates about the origin.

The inductance of the rotor 50 have different values in d-axis and inq-axis. The d-axis is a magnetic pole axis along the direction ofmagnetic flux, and the q-axis is perpendicular to the d-axis (an axisthat along with the direction of torque). Therefore, the magnitude ofthe electric current vector is large in the case of the direction closeto the d-axis, and is small in the case of the direction close to theq-axis. As a consequence, the endpoint of the electric current vectordraws an oval trajectory 55 on the α-β coordinates, taking the directionof d-axis of the rotor 50 as the major axis, as shown in FIG. 2( b).

Therefore, the magnitude of the electric current vector takes localmaximum values in the directions of the N-pole and the S-pole of therotor 50. That is, the magnitude of the electric current vector has twolocal maximum values in a single cycle of the electric current vector,as shown in FIG. 3( a). In this case, when the magnitude of the electriccurrent vector is sufficiently large, the magnitude of the electriccurrent vector in the direction of the N-pole takes the maximum value(cf. curve L1). This is because the inductance is smaller at the N-poleside than at the S-pole side of the rotor 50 due to the influence of amagnetic saturation of the stator.

Thus initially, a sufficient magnitude of high frequency voltage vectoris applied, and the local maximum electric current vector correspondingto the N-pole is specified. Subsequently, a high frequency voltagevector that is smaller in magnitude is applied, thereby to estimate thephase of the rotor 50 based on the local maximum value of the electriccurrent vector. More specifically, the phase angle (electrical angle) θof the rotor 50 can be obtained from an α-axis component I_(α) and aβ-axis component I_(β) of the electric current vector when the magnitudetakes the local maximum value, by θ=Tan⁻¹ (I_(α)/I_(β)).

However, as shown in FIG. 2( b), distortion occurs to the response ofthe electric current at the application of high frequency voltage vectordue to the difference between the inductances in the direction of d-axisand q-axis. As a consequence, a computer needs to conduct a complicatedcomputing process in order to obtain the α-axis component I_(α) and theβ-axis component I_(β) of the electric current vector. As a consequence,there is a problem in which computing load on the processor is heavy.

SUMMARY OF THE INVENTION

An object of the present invention is to provide a motor controller thatcan simplify the process for sensorless driving.

The motor controller of the present invention is for driving an electricmotor comprising a rotor as a field magnet and stator coils of U-phase,V-phase and W-phase. The motor controller includes an explorationvoltage application unit for applying an exploration voltage to thestator coils of U-phase, V-phase and W-phase such that the voltagevector expressed by the voltage applied to the stator coils rotates in apredetermined cycle with maintaining a constant magnitude, an electriccurrent detection unit for detecting an electric current flowing throughthe electric motor during the period in which the exploration voltage isapplied by the exploration voltage application unit, and a rotorrotation angle estimation unit for estimating a rotation angle (phaseangle, electrical angle) of the rotor based on a phase of the voltagevector when a magnitude of the electric current detected by the electriccurrent detection unit takes a local maximum value.

With the rotation of the voltage vector having a constant magnitude, achange occurs in the electric current flowing through the electric motor(magnitude of the electric current vector) due to the difference betweenthe inductance in the direction of the polar axis of the rotor(direction of d-axis) and the inductance in the direction perpendicularto the polar axis (direction of q-axis). Specifically, the magnitude ofthe electric current vector takes a local maximum value when the vectoris along the direction of the pole position (N-pole, S-pole) of therotor. Thereupon, the rotation angle of the rotor is estimated based onthe phase of the voltage vector when the electric current takes a localmaximum value.

Since the voltage vector is constant in magnitude, calculation of thephase of the voltage vector is easier in comparison to that of theelectric current vector in which a distortion occurs. Accordingly, therotation angle of the rotor can be estimated sensorless, whilesimplifying the computing process.

It is preferable that the exploration voltage application unit appliesthe exploration voltage to the stator coil when the rotor is not inrotation or is rotating at an extremely low speed (for example, 250 rpmor under). Furthermore, it is preferable that the exploration voltageapplication unit applies the exploration voltage so that the voltagevector rotates faster than the rotation of the rotor (preferably, at atwentyfold speed or over).

The rotor rotation angle estimation unit may include a counting unitthat conducts a counting operation synchronized with application of theexploration voltage by the exploration voltage application unit, andgenerates a counter value that expresses the phase of the voltagevector. In this case, the rotor rotation angle estimation unit mayoutput, as rotation angle information expressing the rotation angle ofthe rotor, the counter value of the counting unit when the magnitude ofelectric current detected by the electric current detection takes alocal maximum value.

The counting unit may be a unit that conducts the counting operation ina cycle T/n in which a rotation cycle T of the voltage vector is dividedinto n equal sections. In this case, the rotation angle can be estimatedwith 360/n degree resolution. Furthermore, the counting unit may be aunit that is initialized and starts the counting operation when thevoltage vector is at a predetermined phase (for example at zerodegrees). In this case, the counting unit clocks the elapsed time fromthe predetermined phase.

The electric current detection unit may include an unit for obtainingthe magnitude of the electric current by computing a norm from a d-axiselectric current and a q-axis electric current.

It is preferable that the motor controller further includes a rotationcontrol signal generation unit for generating a control signal that isapplied to the stator coils in order to rotate the rotor based on arotor rotation angle estimated by the rotor rotation angle estimationunit.

The foregoing and other objects, features and effects of the presentinvention will become more apparent from the following description ofthe preferred embodiments with reference to the attached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram for explaining the electrical construction ofan electric power steering apparatus in which a motor controlleraccording to one embodiment of the present invention is applied.

FIG. 2( a) and FIG. 2( b) are drawings for explaining the rotation of ahigh frequency voltage vector and an electric current vector.

FIG. 3( a), FIG. 3( b) and FIG. 3( c) are drawings for explaining therotor phase angle estimation operation due to application of a highfrequency voltage vector.

FIG. 4 is a flowchart for explaining the rotor phase angle estimationoperation.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

FIG. 1 is a block diagram for explaining the electrical construction ofan electric power steering apparatus in which a motor controlleraccording to one embodiment of the present invention is applied. Thiselectric power steering apparatus comprises a torque sensor 1 fordetecting a steering torque applied to a steering wheel of a motorvehicle, an electric motor 3 that supplies a steering assist force to asteering mechanism 2 of a motor vehicle, and a motor controller 5 thatdrive controls the electric motor 3. The motor controller 5 realizes anappropriate steering assist in accordance with the steering situation bydriving the electric motor 3 in accordance with the steering torquewhich the torque sensor 1 detects. The electric motor 3 is a three-phasebrushless DC motor in this embodiment, and as shown in FIG. 2( a),comprises a rotor 50 as a field magnet, and a U-phase stator coil 51, aV-phase stator coil 52 and a W-phase stator coil 53. The electric motor3 may be an inner rotor type that is disposed with a stator at theexterior of a rotor, or may be an outer rotor type that is disposed withthe stator at the interior of a tubular rotor.

The motor controller 5 comprises a d-axis electric current command valuegeneration section 11, a q-axis electric current command valuegeneration section 12, a d-axis PI (proportional integral) controlsection 13, a q-axis PI control section 14, a d-axis command voltagegeneration section 15, a q-axis command voltage generation section 16, acoordinate transformation section 17 that transforms the d-axis commandvoltage and the q-axis command voltage into another coordinate voltages,a PWM control section 10, a driving circuit (inverter circuit) 18, anelectric current detection circuit 19 as an electric current detectionunit, and a coordinate transformation section 20 that transforms theoutput of the electric current detection circuit 19 into anothercoordinate current.

The d-axis electric current command value generation section 11generates a command value of a d-axis electric current component that isalong the direction of a rotor magnetic pole of the electric motor 3.Similarly, the q-axis electric current command value generation section12 generates a command value of a q-axis electric current component,that is perpendicular to d-axis (the d-q coordinate plane is alongrotation plane of the rotor 50). The d-axis electric current commandvalue I_(d)* and the q-axis electric current command value I_(q)* areexpressed by the following equations (1) and (2), in which an electriccurrent command value I* expresses the amplitude of an electric current(sinusoidal electric current) to be supplied to the U-phase, V-phase,and the W-phase of the electric motor 3.

$\begin{matrix}\left\lbrack {{Equation}\mspace{20mu} 1} \right\rbrack & \; \\{I_{d}^{*} = 0} & (1) \\{I_{q}^{*} = {- \sqrt{\frac{3}{2}I^{*}}}} & (2)\end{matrix}$

Therefore, the d-axis electric current command value generation section11 is configured to generate a constant “zero”, and the q-axis electriccurrent command value generation section 12 is configured to generate aq-axis electric current command value I_(q)* in accordance with thesteering torque. More specifically, the q-axis electric current commandvalue generation section 12 may be configured by a map (table) thatstores the q-axis electric current command value I_(q)* corresponding tothe steering torque.

For example, the electric current detection circuit 19 detects a U-phaseelectric current I_(U) and a V-phase electric current I_(V) of theelectric motor 3. The detected value is supplied to the coordinatetransformation section 20. The coordinate transformation section 20transforms the U-phase electric current I_(U) and the V-phase electriccurrent I_(V) into electric current components on the d-q coordinates,namely, a d-axis electric current I_(d) and a q-axis electric currentI_(q) in accordance with the following equations (3) and (4).

$\begin{matrix}{I_{d} = {{{- \sqrt{2}}{{\sin\left( {\theta - \frac{2\pi}{3}} \right)} \cdot I_{U}}} + {\sqrt{2}\sin \; {\theta \cdot I_{V}}}}} & (3) \\{I_{q} = {{{- \sqrt{2}}{{\cos\left( {\theta - \frac{2\pi}{3}} \right)} \cdot I_{U}}} + {\sqrt{2}\cos \; {\theta \cdot I_{V}}}}} & (4)\end{matrix}$

The motor controller 5 comprises a d-axis electric current deviationcomputing section 21 for computing the deviation of the d-axis electriccurrent I_(d) to the d-axis electric current command value I_(d)*, and aq-axis electric current deviation computing section 22 for computing thedeviation of the q-axis electric current I_(q) to the q-axis electriccurrent command value I_(q)*. The deviations that are output by thesesections are supplied respectively to the d-axis PI control section 13and the q-axis PI control section 14, and are processed through the PIcomputing process. Then, in accordance with these results of computing,a d-axis command voltage V_(d)* and a q-axis command voltage V_(q)* aregenerated by the d-axis command voltage generation section 15 and theq-axis command voltage generation section 16, and supplied to thecoordinate transformation section 17. The coordinate transformationsection 17 transforms the d-axis command voltage V_(d)* and the q-axiscommand voltage V_(q)* into voltage command values V_(U)*, V_(V)*,V_(W)* of the U-phase, the V-phase and the W-phase in accordance withthe following equations (5), (6) and (7).

$\begin{matrix}{V_{U}^{*} = {\sqrt{\frac{2}{3}}\left\{ {{\cos \; {\theta \cdot V_{d}^{*}}} - {\sin \; {\theta \cdot V_{q}^{*}}}} \right\}}} & (5) \\{V_{V}^{*} = {\sqrt{\frac{2}{3}}\left\{ {{{\cos\left( {\theta - \frac{2\pi}{3}} \right)} \cdot V_{d}^{*}} - {{\sin\left( {\theta \cdot \frac{2\pi}{3}} \right)} \cdot V_{q}^{*}}} \right\}}} & (6) \\{V_{W}^{*} = {\sqrt{\frac{2}{3}}\left\{ {{{\cos\left( {\theta - \frac{4\pi}{3}} \right)} \cdot V_{d}^{*}} - {{\sin\left( {\theta \cdot \frac{4\pi}{3}} \right)} \cdot V_{q}^{*}}} \right\}}} & (7)\end{matrix}$

The PWM control section 10 generates a driving signal of a duty ratiocontrolled in accordance with the three-phase voltage command valuesV_(U)*, V_(V)*, V_(W)*, and supplies the signal to the driving circuit18. Thereby, voltages of a duty ratio in accordance with the voltagecommand values V_(U)*, V_(V)*, V_(W)* are applied to the respectivephases of the electric motor 3.

A phase angle (electrical angle) θ of the rotor 50 is necessary forcoordinate transformation of the above-mentioned equations (3) to (7).Thereupon, the motor controller 5 comprises a rotor angle estimationsection 25 for estimating the rotor phase angle θ without using aposition sensor. An output of the electric current detection circuit 19is supplied to this rotor angle estimation section 25 via a highfrequency response extraction section 24. The high frequency responseextraction section 24 is, for example, a highpass filter.

The motor controller 5 further comprises a high frequency voltagegeneration section 30 as an exploration voltage application unit, inorder to estimate the phase angle θ of the rotor 50 when the rotor 50 isnot in rotation and when the rotor 50 is rotating at an extremely lowspeed (250 rpm or under). The high frequency voltage generation section30 generates the voltage command values for applying a high frequencysinusoidal voltage of a sufficiently high frequency (for example, 200Hz) in comparison to the rated frequency of the electric motor 3, as anexploration voltage, to the stator coils 51, 52, 53 of the U-phase,V-phase, and W-phase of the electric motor 3. The high frequency voltagegeneration section 30 then supplies the values to the PWM controlsection 10. More specifically, a high frequency voltage vector thatspatially rotates about the center of rotation of the rotor 50 isapplied by sequentially repeating a V-W-phase electrification, aW-U-phase electrification, and a U-V-phase electrification throughapplication of a high frequency voltage of a duty ratio at a degree thatdoes not induce the rotation of the rotor 50. The high frequency voltagevector is a voltage vector (rotating constant voltage vector) having aconstant magnitude that rotates about the origin of the ad coordinate ata constant speed. The ad coordinate is a fixed coordinate that assumesthe center of rotation of the electric motor 50 as the origin (c.f. FIG.2( a)).

The high frequency voltage generation section 30 generates a commandvalue for applying a high frequency voltage (exploration voltage) suchas mentioned above, when the rotor 50 is not in rotation and when therotor 50 is rotating at an extremely low speed, then supplies the valueto the PWM control section 10. When the rotation of the rotor 50 issufficiently fast (for example, over 250 rpm), the high frequencyvoltage generation section 30 stops the generation of a high frequencyvoltage command.

The high frequency response extraction section 24 conducts a filteringprocess that extracts a frequency component corresponding to thefrequency of the high frequency voltage, which is generated by the highfrequency voltage generation section 30 from the output signal of theelectric current detection circuit 19 when the rotor 50 is not inrotation and when the rotor 50 is rotating at an extremely low speed.Furthermore, the high frequency response extraction section 24 outputsthe output signal of the electric current detection circuit 19 throughto the rotor angle estimation section 25 without conducting theabove-mentioned filtering process when the rotation of the rotor 50 issufficiently fast (for example, over 250 rpm).

Therefore, the rotor angle estimation section 25 estimates the rotorphase angle θ based on the high frequency component extracted by thehigh frequency response extraction section 24 when the rotor 50 is notin rotation and when the rotor 50 is rotating at an extremely low speed.Furthermore, when the rotation of the rotor 50 is sufficiently fast, therotor angle estimation section 25 estimates the induced voltage thatoccurs in the stator coils 51, 52, 53 of the U-phase, V-phase, and theW-phase with the rotation of the rotor 50, then estimates the phaseangle θ of the rotor 50 based on the voltage. In regard to theestimation of an induced voltage, refer to, for example, “Position andVelocity Sensorless Controls of Cylindrical Brushless DC Motors UsingDisturbance Observers and Adaptive Velocity Estimators”, Zhiqian Chen etal., (a Publication from the Transactions of The Institute of ElectricalEngineers of Japan Vol. 118-D, No. 7/8, July/August, 1998).

The rotor angle estimation section 25 comprises a counter 26 as acounting unit that is used for obtaining a rotation angle of the rotor50 when the rotor 50 is not in rotation and when the rotor 50 isrotating at an extremely low speed. The counter 26 repeatedly operatesso that the counter is initialized and starts a counting operation whena high frequency voltage vector applied by the function of the highfrequency voltage generation section 30 is along the α-axis (coincidingwith the direction of the U-phase) (namely, when the phase of the highfrequency voltage vector is zero). The counter 26 counts up, forexample, in every cycle of T/n in which the rotation cycle of the highfrequency voltage (time needed for a high frequency voltage vector torotate 360 degrees in an electrical angle of the rotor 50) T is dividedinto n equal sections (n denotes the number of sampling per singlecycle. For example, n=360.). The output represents the phase of the highfrequency voltage vector. As shown in FIG. 3( a), when the counter valueof the counter 26 is referred at the point where the local maximum valueof the output (electric current) of the high frequency responseextraction section 24 is detected, the counter value expresses theposition of the magnetic pole of the rotor 50 (the phase angle of thehigh frequency voltage vector when the magnitude of the electric currentvector is the maximum). FIG. 3( a) represents a variation with time ofthe magnitude of an electric current vector, FIG. 3( b) represents avariation with time of the β-axis component of the high frequencyvoltage vector, and FIG. 3( c) represents a variation with time of thecounter value of the counter 26.

FIG. 4 is a flow chart for explaining the rotor phase angle estimationoperation when the rotor 50 is not in rotation or is rotating at anextremely low speed, and corresponds to a single cycle (single rotation)of the high frequency voltage applied by the function of the highfrequency voltage generation section 30. The counter 26 is initializedin synchronization with the start of application of the high frequencyvoltage vector (phase angle zero, in the direction of α-axis), andcounting is started (Steps S1, S2, S3). On the other hand, the rotorangle estimation section 25 detects the local maximum value of theoutput of the high frequency response extraction section 24 (Step S4),and outputs the counter value of the counter 26 as a rotor phase angleestimation value when the local maximum value is detected (Step S5).

As described previously, the magnitude of the electric current vectortakes local maximum values when the direction of the electric currentvector is directed in the direction of the N-pole and the S-pole of therotor 50. When the magnitude of the electric current vector is largeenough to cause a magnetic saturation of the stator, the magnitude ofthe electric current vector when the electric current vector is directedto the N-pole of the rotor 50 is larger than that of the electriccurrent vector when the electric current vector is directed to theS-pole of the rotor (c.f. curve L2 of FIG. 3( a)).

Thereupon, when the position of the N-pole is unknown, the highfrequency voltage generation section 30 applies a high frequency voltagevector having a magnitude that can cause a magnetic saturation of thestator. On the other hand, the rotor angle estimation section 25 judgesthe position of the N-pole based on the counter value of the counter 26when the magnitude of the electric current vector is the maximum valuein a single cycle of the high frequency voltage vector (N-pole judgingoperation). That is, the local maximum value corresponding to the N-poleis specified among the local maximum values that appear twice in asingle cycle of the high frequency voltage vector. Thereafter, the highfrequency voltage generation section 30 applies a high frequency voltagevector with a magnitude that is not as large as to cause a magneticsaturation. The rotor angle estimation section 25 refers to the countervalue of the counter 26 at the position of the local maximum valuecorresponding to the maximum value specified by the N-pole judgingoperation, then outputs the counter value as the position of the rotorangle (c.f. curve L2 of FIG. 3( a)).

While one embodiment of the present invention has been described asmentioned above, the present invention can be further implemented inother configurations. For example, in the above-mentioned embodiment,although the rotor angle estimation section 25 refers to the output ofthe high frequency response extraction section 24, a norm {I_(d) ²+I_(q)²}^(1/2) of the electric current components I_(d), I_(q) aftertransformation by the coordinate transformation section 20 may be usedas the magnitude of the electric current vector. In such case, the rotorangle estimation section 25 may obtain the phase of the high frequencyvoltage vector by the counter value of the counter 26 when the norm{I_(d) ²+I_(q) ²}^(1/2) takes the local maximum value.

Furthermore, in the above-mentioned embodiment, the rotor phase angle θis obtained using the counter 26 that counts in synchronization with theapplication of the high frequency voltage vector; however, the rotorphase angle θ can be obtained without using the counter 26. For example,the phase angle θ may be obtained by θ=Tan⁻¹(V_(α)/V_(β)) from an α-axiscomponent V_(α) and an β-axis component V_(β) of the high frequencyvoltage vector when the local maximum value of the electric current isdetected.

While the present invention has been described in detail by way of theembodiment thereof, it should be understood that the foregoingdisclosure is merely illustrative of the technical contents of thepresent invention but not limitative to the same. The spirit and thescope of the present invention are to be limited only by the appendedclaims.

This application corresponds to Japanese Patent Application No.2006-92091 file with the Japanese Patent Office on Mar. 29, 2006, thewhole disclosure thereof is incorporated herein by reference.

1. A motor controller for driving an electric motor including a rotor asa field magnet and stator coils of U-phase, V-phase and W-phase, themotor controller comprising: an exploration voltage application unit forapplying an exploration voltage to the stator coils of U-phase, V-phaseand W-phase such that a voltage vector expressed by the voltage appliedto the stator coils rotates in a predetermined cycle with maintaining aconstant magnitude, an electric current detection unit for detecting anelectric current flowing through the electric motor during the period inwhich the exploration voltage is applied by the exploration voltageapplication unit, and a rotor rotation angle estimation unit forestimating a rotation angle of the rotor based on a phase of the voltagevector when a magnitude of the electric current detected by the electriccurrent detection unit takes a local maximum value.
 2. A motorcontroller as set forth in claim 1, wherein the rotor rotation angleestimation means unit includes a counting unit for conducting a countingoperation synchronized with application of the exploration voltage bythe exploration voltage application unit, and generating a counter valuethat expresses the phase of the voltage vector, wherein the rotorrotation angle estimation unit outputs, as rotation angle informationfor expressing the rotation angle of the rotor, the counter value of thecounting unit when the magnitude of the electric current detected by theelectric current detection unit takes a local maximum value.
 3. A motorcontroller as set forth in claim 2, wherein the counting unit conductsthe counting operation in a cycle T/n in which a rotation cycle T of thevoltage vector is divided into n equal sections.
 4. A motor controlleras set forth in claim 1, wherein the motor controller further includes arotation control signal generation unit for generating a control signalthat is applied to the stator coils in order to rotate the rotor basedon a rotation angle of the rotor estimated by the rotor rotation angleestimation unit.